/*
 * SuppliesCounterVisitor.hpp
 *
 *  Created on: 08-01-2011
 *      Author: Przemek
 */

#pragma once

#include "world/ElementsVisitor.hpp"

/*
 * Counts meat supplies, vegetable supplies and water supplies.
 */
class SuppliesCounterVisitor: public ElementsVisitor
{
	private:
		int meat;
		int vegetable;
		int water;

	public:
		SuppliesCounterVisitor();
		void visit(Barrier& barrier);
		void visit(Individual& individual);
		void visit(MeatSupply& meatSupply);
		void visit(VegetableSupply& vegetableSupply);
		void visit(WaterSupply& waterSupply);

		int getWaterCounter() const;
		int getMeatCounter() const;
		int getVegetablesCounter() const;
};
